home *** CD-ROM | disk | FTP | other *** search
- #!/bin/sh
-
- . /lib/partman/lib/base.sh
-
- enable_swap
-
- for dev in $DEVICES/*; do
- [ -d "$dev" ] || continue
- cd $dev
- partitions=
- open_dialog PARTITIONS
- while { read_line num id size type fs path name; [ "$id" ]; }; do
- [ "$fs" != free ] || continue
- partitions="$partitions $id,$num"
- done
- close_dialog
-
- for part in $partitions; do
- id=${part%,*}
- num=${part#*,}
- [ -f $id/method -a -f $id/format \
- -a -f $id/acting_filesystem ] || continue
- filesystem=$(cat $id/acting_filesystem)
- case $filesystem in
- ext2|fat16|fat32)
- if [ -f $id/formatted ] && \
- [ $id/formatted -nt $id/method ] && \
- ([ ! -f $id/filesystem ] || \
- [ $id/formatted -nt $id/filesystem ]); then
- continue
- fi
- log "Try to create file system for $dev/$id"
- if [ -f $id/mountpoint ]; then
- template=partman-basicfilesystems/progress_formatting_mountable
- db_subst $template MOUNT_POINT "$(cat $id/mountpoint)"
- else
- template=partman-basicfilesystems/progress_formatting
- fi
- open_dialog PARTITION_INFO $id
- read_line x1 x2 x3 x4 x5 device x6
- close_dialog
-
- RET=''
- db_metaget partman/filesystem_short/"$filesystem" description || RET=''
- [ "$RET" ] || RET="$filesystem"
- db_subst $template TYPE "$RET"
- db_subst $template PARTITION "$num"
- db_subst $template DEVICE $(humandev $(cat device))
- case $filesystem in
- ext2)
- if [ ! -f $id/usage ]; then
- name_progress_bar $template
- open_dialog CREATE_FILE_SYSTEM $id $filesystem
- read_line status
- close_dialog
- sync
- else
- status=failed
- fi
- if [ "$status" != OK ]; then
- db_progress START 0 3 partman/text/formatting
- db_progress INFO $template
- db_progress SET 1
- usage=''
- if [ -f $id/usage ]; then
- usage="-T $(cat $id/usage)"
- fi
- if log-output -t partman --pass-stdout \
- mkfs.ext2 $device $usage >/dev/null; then
- sync
- status=OK
- else
- status=failed
- fi
- db_progress STOP
- fi
- if [ "$status" = OK ]; then
- label=''
- if [ -f $id/label ]; then
- label=$(cat $id/label | \
- sed 's/\(................\).*/\1/g')
- fi
- if [ "$label" ]; then
- log-output -t partman --pass-stdout \
- tune2fs -L "$label" $device >/dev/null
- fi
- if [ -f $id/reserved_for_root ]; then
- log-output -t partman --pass-stdout \
- tune2fs -m $(cat $id/reserved_for_root) $device >/dev/null
- fi
- fi
- ;;
- fat16|fat32)
- name_progress_bar $template
- open_dialog CREATE_FILE_SYSTEM $id $filesystem
- read_line status
- close_dialog
- sync
- ;;
- esac
-
- if [ "$status" != OK ]; then
- db_subst partman-basicfilesystems/create_failed TYPE "$filesystem"
- db_subst partman-basicfilesystems/create_failed PARTITION "$num"
- db_subst partman-basicfilesystems/create_failed DEVICE $(humandev $(cat device))
- db_input critical partman-basicfilesystems/create_failed || true
- db_go || true
- #disable_swap
- exit 1
- fi
- >$id/formatted
- ;;
- esac
- done
- done
-
- #disable_swap
-